package com.sinodata.bsm.common.vo;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

/**
 * PageConf entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "PAGE_CONF")
public class PageConf implements java.io.Serializable, Cloneable {

    /**
     * 
     */
    private static final long serialVersionUID = 2874547766757962025L;

    // Fields   
    private Long id;
    private String pageModule;
    private Long pagePortalId;
    private String title;
    private Integer posx;
    private Integer posy;
    private String params;
    private String paramPage;

    // Constructors

    /** default constructor */
    public PageConf() {
    }

    /** minimal constructor */
    public PageConf(Long id) {
        this.id = id;
    }

    // Property accessors
    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "sequence")
    @SequenceGenerator(name = "sequence", sequenceName = "PAGE_CONF_SEQ")
    @Column(name = "ID", unique = true, nullable = false, precision = 18, scale = 0)
    public Long getId() {
        return this.id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    @Column(name = "PAGE_MODULE", length = 32)
    public String getPageModule() {
        return this.pageModule;
    }

    public void setPageModule(String pageModule) {
        this.pageModule = pageModule;
    }

    @Column(name = "PAGE_PORTAL_ID", precision = 13, scale = 0)
    public Long getPagePortalId() {
        return this.pagePortalId;
    }

    public void setPagePortalId(Long pagePortalId) {
        this.pagePortalId = pagePortalId;
    }

    @Column(name = "TITLE", length = 64)
    public String getTitle() {
        return this.title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    @Column(name = "PARAMS", length = 1024)
    public String getParams() {
        return this.params;
    }

    public void setParams(String params) {
        this.params = params;
    }

    @Override
    public String toString() {
        return "PageConf [id=" + id + ", pageModule=" + pageModule + ", pagePortalId=" + pagePortalId + ", title=" + title + ", posx=" + posx + ", params=" + params + "]";
    }

    @Column(name = "POS_X", precision = 3, scale = 0)
    public Integer getPosx() {
        return posx;
    }

    public void setPosx(Integer posx) {
        this.posx = posx;
    }

    @Column(name = "POS_Y", precision = 3, scale = 0)
    public Integer getPosy() {
        return posy;
    }

    public void setPosy(Integer posy) {
        this.posy = posy;
    }

    @Column(name = "PARAM_PAGE", length = 128)
    public String getParamPage() {
        return paramPage;
    }

    public void setParamPage(String paramPage) {
        this.paramPage = paramPage;
    }

    @Override
    public PageConf clone() throws CloneNotSupportedException {
        PageConf testClone = null;
        try {
            testClone = (PageConf) super.clone();
            testClone.setId(null);
            testClone.setPagePortalId(null);
        } catch (CloneNotSupportedException e) {
            e.printStackTrace();
        }
        return testClone;

    }

}